/**
 * 给定一个整数数组 nums 和一个整数目标值 target，
 * 请你在该数组中找出 和为目标值 target  的那 两个 整数，并返回它们的数组下标。
 * 你可以假设每种输入只会对应一个答案，并且你不能使用两次相同的元素。
 * 你可以按任意顺序返回答案。
 * 
 * 
 * 注意点：动态内存分配后   不free无论你是在那个区域都不会释放
*/
#if  1
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
int *twoSum(int *nums,int numsSize,int targrt,int *returnSize)
{

    for (int i = 0; i < numsSize; i++)
    {
        /* code */
        for (int j = i + 1; j < numsSize; j++)
        {
            /* code */
            if (targrt == nums[i] + nums[j])
            {
                /* code */
                //动态分配两个内存空间
                int *ret = malloc(sizeof(int) * 2);
                ret[0] = i;
                ret[1] = j;
                return ret;
                // return returnSize;
            }
            
        }
        
    }

    return NULL;
}

int main()
{
    int nums[] = {2,7,11,15};
    int target = 9;
    int *returnSize;
    int *ret = twoSum(nums,4,target,returnSize);
    printf("[%d,%d]",ret[0],ret[1]);
    
    return 0;
}
#endif